Method, apparatus and computer program product for automatically analyzing human performance

ABSTRACT

An apparatus, method and computer program product are provided to analyze human performance, such as a golf shot, as defined by an initial data set that is comprised of a plurality of data elements. Initially, at least one data element that constitutes an outlier is removed from the initial data set to create a representative data set, such as by removing a predetermined number of the largest and smallest data elements from the initial data set. A measure of the deviation, such as the standard deviation, of the representative data set is then determined. The initial data set is then filtered based, at least partially, upon the measure of deviation of the representative data set to create a filtered data set. The human performance is then analyzed based at least partially upon the filtered data set.

CROSS-REFERENCE TO RELATED APPLICATION(S)

The present application claims priority from U.S. Provisional Application No. 60/582,031, filed Jun. 22, 2004 and entitled Method and Apparatus for Automatically Analyzing Human Performance, the contents of which are incorporated herein by reference.

FIELD OF THE INVENTION

The present invention relates generally to techniques for automatically analyzing human performance, such as a golf swing.

BACKGROUND OF THE INVENTION

A wide variety of human performance statistics are collected and analyzed. In golf, for example, various parameters that define a golf shot are collected and analyzed. These parameters generally include distance downrange (typically either carry or total) and distance offline to the left or right.

One such instance in which a variety of parameters that define a golf shot are collected and analyzed is in club fitting. In club fitting, a golfer takes a number of shots with each of several different clubs, such as several different drivers. Parameters including distance downrange and distance offline, are collected for each shot, such as by means of a launch monitor system, such as that described by U.S. patent application Ser. No. 10/360,196 filed Feb. 7, 2003 entitled “Methods, Apparatus and Computer Program Products for Processing Images of a Golf Ball” (the contents of which are incorporated herein in their entirety), or a distance measuring system, such as the Accushot™ system that is commercially available from Accusport International, Inc. of Winston-Salem, N.C. A person trained for club fitting can then analyze the golf shots as defined by the various parameters and recommend that the golfer subsequently use a particular golf club or a set of golf clubs in order to best match the golf clubs to their golf swing, thereby hopefully improving the golfer's performance. Alternately, club manufacturers have developed computer software applications for receiving and analyzing the parameters that define the shots taken by a golfer in order to similarly recommend a golf club or a set of golf clubs to the golfer.

Unlike many other applications that generate a data set that is effectively smooth and continuous, human performance statistics including those that define a golf shot may commonly have one or more outliers as a result of the human element. In golf, for example, the parameters defining a missed shot would generally be outliers. Since the outliers differ substantially from the majority of the data, the outliers cause the data set to no longer be effectively smooth and continuous. As such, although the outlier may not be fairly representative of the general level of performance in the same manner that an infrequent missed shot is not representative of the golfer's typical shot, the outlier may have a significant deleterious effect upon any analysis of the parameters. For example, a missed shot may be defined by parameters that, when considered in combination with similar parameters defining other shots, undesirably influence the analysis of the golfer's swing and potentially result in the golfer being fit with clubs that are less than ideal.

In order to address the spread of or variations in the data, human performance statistics are often analyzed on the basis of averages and standard deviations. These statistical measures also take into account outliers and therefore are similarly, albeit to a lesser degree, influenced in an adverse manner by the outliers.

An additional issue with club fitting involves the adverse effect of golfer fatigue. In this regard, if the golfer fatigues during the club fitting process, the golf shots taken later in the session may not be truly representative of the golfer's performance. Fatigue is particularly an issue when the golfer misses shots since the golfer must take a sufficient number of shots with each club, such as three or more shots, that are representative of the golfer's true ability in order to maintain any level of accuracy and credibility in the fitting process.

BRIEF SUMMARY OF THE INVENTION

An apparatus, method and computer program product of embodiments of the present invention are therefore provided to address these and other shortcomings of the prior techniques. In this regard, the apparatus, method and computer program product of one embodiment permit human performance, such as a golf swing, to be analyzed based on data that is more truly representative without unnecessarily tiring the subject.

In one embodiment, an apparatus, method and computer program product of the present invention analyze human performance as defined by an initial data set that is comprised of a plurality of data elements. Initially, at least one data element that constitutes an outlier is removed from the initial data set to create a representative data set, such as by removing a predetermined number of the largest and smallest data elements from the initial data set. A measure of the deviation, such as the standard deviation, of the representative data set is then determined. The initial data set is then filtered based, at least partially, upon the measure of deviation of the representative data set to create a filtered data set. The human performance is then analyzed based at least partially upon the filtered data set. In the apparatus embodiment, a processing element generally performs the foregoing functions.

The human performance that is analyzed may be a golf shot. For example, embodiments of the present invention may be designed to analyze the downrange distance and/or the offline distance of a golf shot. In one embodiment, the data elements that comprise the initial data set are captured, such as by means of a sensor. For example, the sensor may comprise a launch monitor that captures the initial conditions and/or club swing parameters that constitute the data elements of the initial data set.

By removing the outliers prior to analyzing the human performance, the analysis can be performed more credibly and accurately. Additionally, because of the removal of the outliers, a golfer need not fatigue themselves by hitting an excessive number of shots to insure that a representative data set is obtained, but can instead be apprised by the apparatus and method of one embodiment of the present invention that the representative data set is sufficiently large after removing any outliers.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING(S)

Having thus described the invention in general terms, reference will now be made to the accompanying drawings, which are not necessarily drawn to scale, and wherein:

FIG. 1 is a block diagram of an apparatus of one embodiment of the present invention; and

FIG. 2 is a flow chart illustrating operations performed in accordance with one embodiment of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

The present inventions now will be described more fully hereinafter with reference to the accompanying drawings, in which some, but not all embodiments of the invention are shown. Indeed, these inventions may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will satisfy applicable legal requirements. Like numbers refer to like elements throughout.

An apparatus 10 for collecting and analyzing the parameters that define a golf shot is shown in FIG. 1. While the apparatus, method and computer program product will be primarily described in conjunction with golf and, more particularly, in conjunction with golf club fittings, the apparatus, method and computer program product can be employed in conjunction with the analysis of other human performance statistics.

In the context of club fitting, however, a golfer takes a number of shots with each of a plurality of clubs. In order to analyze the golf shots so as to fit a golf club or set of golf clubs to the golfer's swing, a number of parameters that define each golf shot are collected.

The apparatus 10 of one embodiment therefore includes a launch monitor as described in above-referenced U.S. patent application Ser. No. 10/360,196 to collect the parameters. While various parameters may be collected and analyzed, the apparatus, method and computer program product will be described to define golf shots in terms of downrange distance and offline distance. As shown in FIG. 1, therefore, the apparatus of one embodiment includes a sensor 12 positioned, generally, in front of or to the side of the golfer, to measure a plurality of initial conditions including initial ball velocity, vertical launch angle, lateral launch angle, dispersion angle, backspin, and side spin. The sensor can advantageously include at least one camera for capturing at least two images of the ball immediately after launch from which the foregoing initial conditions, including side spin, can be measured. In this regard, the sensor is described more fully by the above-referenced U.S. patent application Ser. No. 10/360,196. Although not necessary for the present invention, the sensor may also include a conventional club head sensor, if desired to collect club swing parameters.

The apparatus 10 also includes a computing device 14, such as a processor, a personal computer or the like that operates under control of a computer program stored in memory 16, as well as any other combination of hardware, such as an electronic circuitry, ASIC or the like, software or firmware for thereafter determining the flight path of the ball at least partially based upon the initial conditions including the measurement of the sidespin. In this regard, the computing device can determine the flight path of the ball in accordance with a predefined flight model that relies upon the initial conditions including sidespin for its modeling activities. The computing device can utilize any desired flight model including, for example, the flight model promulgated by the U.S. Golf Association (USGA) or a similar flight model that dynamically varies the lift and drag coefficients based upon relative wind (the vector sum of the actual wind and the direction of travel of the ball), spin rate, ball speed and/or ball design. The launch monitor and, in particular, the computing device can then determine additional parameters, such as downrange distance and offline distance based on the flight model and the measured data.

While a launch monitor as described above is advantageous, the apparatus 10 can collect and/or determine the parameters that define the golf shots in other manners, such as by means of a distance determining system as noted above.

The computing device 14 constructs an initial data set, as noted in step 50 of FIG. 2, that includes data elements representing the parameters that define each golf shot. In the example in which downrange distance and offline distance are the parameters that define each golf shot, the initial data set could contain the downrange distance and offline distance for each golf shot. While the initial dataset will be described as including both the downrange distance and offline distance values, separate data sets can be established for the downrange distance and for the offline distance, if so desired.

The computing device 14 then identifies outliers in the initial data set. See step 52. Outliers are generally defined as values that vary significantly from a majority of the other data elements. In one embodiment, outliers are defined as a predetermined number of the largest and/or smallest values of a particular parameter that are included in the initial data set, without consideration for the variation of the outliers from the remainder of the data elements. In the foregoing example in which the predetermined number is 1, the largest and smallest values of downrange distance and the largest and smallest values of the offline distance are identified as outliers. The outliers may be placed in an outlier data set, while the data elements remaining from the initial data set following removal of the outliers constitute a representative data set. See step 54. The computing device may define the outliers in other fashions if desired. For example, an outlier may be defined to be any value that deviates from the average of the initial data set by more than x %.

The computing device 14 then determines a measure of deviation, such as standard deviation, of the representative data set and, more generally, of each different parameter included within the representative data set. See block 56. In the foregoing example, the computing device can determine the standard deviation of the downrange distance values in the representative data set and the standard deviation of the offline distance values in the representative data set. The computing device can also determine the mean of each different parameter included in the representative data set, such as the mean of the downrange distance values in the representative data set and the mean of the offline distance values in the representative dataset. See also step 56.

The computing device 14 then filters the initial data set based at least partially upon the measure of deviation, such as standard deviation, of the representative data set to create a filtered data set. In this regard, for each different parameter in the initial dataset, e.g., downrange distance and offline distance, the upper limit of the filter may be determined by summing the mean and the standard deviation of the respective parameter. Conversely, the lower limit of the filter may be determined by subtracting the standard deviation from the mean of the respective parameter. See block 58.

The data elements of the initial data set are then examined, such as by the computing device 14, to determine if the respective data element is between the upper and lower limits established for the respective parameter. If so, the data element is included in the filtered dataset while, if not, the data element is not included in the filtered dataset. See block 60. For example, each downrange distance value in the initial dataset may be evaluated to determine if the downrange distance value is between the upper and lower limits on downrange distance and, if so, the downrange distance value is included in the filtered dataset. Likewise, each offline distance value in the initial dataset is separately analyzed to determine if it is between the upper and lower limits on offline distance and, if so, the offline distance value is included in the filtered dataset.

The human performance can then be analyzed based upon the filtered dataset. See step 62. In the foregoing example, the golfer's swing can be analyzed based on the value of downrange distance and offline distance included in the filtered data set. In this regard, a trained fitter can review the filtered dataset and fit the golfer with appropriate golf club(s). Alternatively, the filtered dataset can be provided to a conventional club fitting software application, such as the applications developed by some club manufacturers, for identifying an appropriate golf club or set of golf clubs for the golfer.

By removing outliers prior to determining the deviation, such as the standard deviation of the data, the deviation (and generally the mean as well) more accurately represent the subject's performance and therefore permit the human performance to be more accurately analyzed. Additionally, by determining the bounds of the data filter after removing the outliers, but then filtering the entire initial dataset, the apparatus 10 and method of the present invention continue to analyze all representative values including any values previously identified as being an outlier that falls between the upper and lower bounds of the filter, thereby ensuring that the apparatus and method of embodiments of the present invention are robust.

The apparatus 10 and method of embodiments of the present invention are capable of being repeated following the collection of each additional data element, such as following each shot. As such, the method and apparatus and, more typically, the computing device 14 can monitor the size of the representative dataset and provide the subject with a signal, such as an image upon a display, once the representative dataset is large enough to be a reasonable statistical sample of the subject's true performance, e.g., once enough shots with a respective club have been taken. The computing device may determine that the representative dataset is large enough in various manners including a comparison to a predetermined threshold, such as three shots in the club hitting scenario, or by a determination that some statistical measure of the representative dataset, such as the mean or standard deviation, is no longer changing by more than a predefined amount from shot to shot. Thus, the computing device of this embodiment can signal the subject to proceed to the next stage, such as by switching clubs, once the representative dataset is determined to be large enough prior to the subject becoming significantly fatigued. Thus, the method and apparatus of this embodiment facilitates data collection in such a manner that the data should not suffer from variations introduced by the fatigue of the subject.

According to one aspect of the present invention, the functions performed by the computing device are performed under control of a computer program product. The computer program product of embodiments of the present invention includes a computer-readable storage medium, such as memory 16, and computer-readable program code portions, such as a series of computer instructions, embodied in the computer-readable storage medium.

In this regard, FIG. 2 is an example of a flow diagram of one embodiment of the methods and computer program products according to embodiments of the present invention. It will be understood that each block or step of the flowchart, and combinations of blocks in the flowchart, can be implemented by computer program instructions. These computer program instructions may be loaded onto a computer or other programmable apparatus 14 to produce a machine, such that the instructions which execute on the computer or other programmable apparatus create means for implementing the functions specified in the flowchart's block(s) or step(s). These computer program instructions may also be stored in a computer-readable memory 16 that can direct a computer or other programmable apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart's block(s) or step(s). The computer program instructions may also be loaded onto a computer or other programmable apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowcharts' block(s) or step(s).

Accordingly, blocks or steps of the flowcharts support combinations of means for performing the specified functions, combinations of steps for performing the specified functions and program instruction means for performing the specified functions. It will also be understood that each block or step of the flowcharts, and combinations of blocks or steps in the flowcharts, can be implemented by special purpose hardware-based computer systems which perform the specified functions or steps, or combinations of special purpose hardware and computer instructions.

Many modifications and other embodiments of the inventions set forth herein will come to mind to one skilled in the art to which these inventions pertain having the benefit of the teachings presented in the foregoing descriptions and the associated drawings. Therefore, it is to be understood that the inventions are not to be limited to the specific embodiments disclosed and that modifications and other embodiments are intended to be included within the scope of the appended claims. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation. 

1. A method of automatically analyzing human performance as defined by an initial data set comprised of a plurality of data elements, the method comprising: removing at least one data element that constitutes an outlier from the initial data set to create a representative date set; determining a measure of deviation of the representative data set; filtering the initial data set based at least partially upon the measure of deviation of the representative data set to create a filtered data set; and analyzing the human performance based at least partially upon the filtered data set.
 2. A method according to claim 1 wherein analyzing the human performance comprises analyzing a golf shot.
 3. A method according to claim 2 wherein analyzing the golf shot comprises analyzing a downrange distance of the golf shot.
 4. A method according to claim 2 wherein analyzing the golf shot comprises analyzing an offline distance of the golf shot.
 5. A method according to claim 1 further comprising capturing the plurality of data elements that comprise the initial data set.
 6. A method according to claim 5 wherein capturing the plurality of data elements comprises capturing the plurality of data elements from among initial conditions and club swing parameters associated with a golf shot.
 7. A method according to claim 1 wherein removing at least one outlier comprises removing a predetermined number of the largest and smallest data elements from the initial data set to create the representative data set.
 8. A method according to claim 1 wherein determining the measure of deviation comprises determining a measure of standard deviation of the representative data set.
 9. An apparatus for analyzing human performance as defined by an initial data set comprised of a plurality of data elements, the apparatus comprising: a computing device capable of: removing at least one data element that constitutes an outlier from the initial data set to create a representative date set; determining a measure of deviation of the representative data set; filtering the initial data set based at least partially upon the measure of deviation of the representative data set to create a filtered data set; and analyzing the human performance based at least partially upon the filtered data set.
 10. An apparatus according to claim 9 wherein said computing device is capable of analyzing a golf shot.
 11. An apparatus according to claim 10 wherein said computing device is capable of analyzing a downrange distance of the golf shot.
 12. An apparatus according to claim 10 wherein said computing device is capable of analyzing an offline distance of the golf shot.
 13. An apparatus according to claim 9 further comprising a sensor for capturing the plurality of data elements that comprise the initial data set.
 14. An apparatus according to claim 13 wherein said sensor comprises a launch monitor for capturing the plurality of data elements from among initial conditions and club swing parameters associated with a golf shot.
 15. An apparatus according to claim 9 wherein said computing device is capable of removing at least one outlier by removing a predetermined number of the largest and smallest data elements from the initial data set to create the representative data set.
 16. An apparatus according to claim 9 wherein said computing device is capable of determining the measure of deviation by determining a measure of standard deviation of the representative data set.
 17. A computer program product for analyzing human performance as defined by an initial data set comprised of a plurality of data elements, the computer program product comprising at least one computer-readable storage medium having computer-readable program code portions stored therein, the computer-readable program code portions comprising: a first executable portion capable of removing at least one data element that constitutes an outlier from the initial data set to create a representative date set; a second executable portion capable of determining a measure of deviation of the representative data set; a third executable portion capable of filtering the initial data set based at least partially upon the measure of deviation of the representative data set to create a filtered data set; and a fourth executable portion capable of analyzing the human performance based at least partially upon the filtered data set.
 18. A computer program product according to claim 17 wherein said fourth executable portion is further capable of analyzing a golf shot.
 19. A computer program product according to claim 18 wherein said fourth executable portion is further capable of analyzing a downrange distance of the golf shot.
 20. A computer program product according to claim 18 wherein said fourth executable portion is further capable of analyzing an offline distance of the golf shot. 